fn takes_ownership(some_string: String) {
    println!("some_string = {}", some_string);
}

fn makes_copy(i:i32) {
    println!("i = {}", i);
}
fn main() {
    let s = String::from("hello");
    takes_ownership(s);
    // println!("{}", s); // error, 这里已经里开作用域了

    let x = 5;
    makes_copy(x);
    println!("{}", x);// true, x 是可以使用的，是在栈上的，具有copy trait 特征的，可以继续使用

    println!("Hello, world!");
}
